{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Dynamic Programming\n",
    "\n",
    "We will be using dynamic programming on sample 4x4 grid world and study **Policy Evaluation** \n",
    "\n",
    "![GridWorld](./images/gridworld.png \"Grid World\")\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Policy Iteration (Prediction)\n",
    "\n",
    "Policy iteration is carried out by converting Bellman Expectation equation for state values to an iterative assignment equation. The backup digram is given below. Pseudo code for the algorithm is given in Fig 3-3\n",
    "\n",
    "![Bellman backup](./images/policy_iteration_backup.png \"Bellman Backup\")\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Running in Colab/Kaggle\n",
    "\n",
    "If you are running this on Colab, please uncomment below cell and run this to install required dependencies."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "## Uncomment and execute this cell to install all the the dependencies if running in Google Colab or Kaggle\n",
    "\n",
    "## Uncomment and run for Colab\n",
    "# !git clone https://github.com/nsanghi/drl-2ed\n",
    "# %cd /content/drl-2ed \n",
    "# %cd chapter3\n",
    "\n",
    "\n",
    "## Uncomment and run for Kaggle\n",
    "# !git clone https://github.com/nsanghi/drl-2ed\n",
    "# %cd /content/drl-2ed \n",
    "# %cd chapter3"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Initial imports and environment setup\n",
    "import numpy as np\n",
    "import seaborn as sns\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "sns.set()\n",
    "\n",
    "# create grid world environment\n",
    "from gridworld import GridworldEnv\n",
    "env = GridworldEnv()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Policy Evaluation\n",
    "\n",
    "def policy_eval(policy, env, discount_factor=1.0, theta=0.00001):\n",
    "    \"\"\"\n",
    "    Evaluate a policy given an environment.\n",
    "\n",
    "    Args:\n",
    "        policy:[S, A]shaped matrix representing the policy. Random in our case\n",
    "        env: env.P -> transition dynamics of the environment.\n",
    "            env.P[s][a] [(prob, next_state, reward, done)].\n",
    "            env.nS is number of states in the environment.\n",
    "            env.nA is number of actions in the environment.\n",
    "        theta: Stop iteration once value function change is\n",
    "            less than theta for all states.\n",
    "        discount_factor: Gamma discount factor.\n",
    "\n",
    "    Returns:\n",
    "        Vector of length env.nS representing the value function.\n",
    "    \"\"\"\n",
    "    # Start with a (all 0) value function\n",
    "    V = np.zeros(env.nS)\n",
    "    V_new = np.copy(V)\n",
    "    while True:\n",
    "        delta = 0\n",
    "        # For each state, perform a \"backup\"\n",
    "        for s in range(env.nS):\n",
    "            v = 0\n",
    "            # Look at the possible next actions\n",
    "            for a, pi_a in enumerate(policy[s]):\n",
    "                # For each action, look at the possible next states...\n",
    "                for prob, next_state, reward, done in env.P[s][a]:\n",
    "                    # Calculate the expected value as per backup diagram\n",
    "                    v += pi_a * prob * \\\n",
    "                        (reward + discount_factor * V[next_state])\n",
    "            # How much our value function changed (across states)\n",
    "            V_new[s] = v\n",
    "            delta = max(delta, np.abs(V_new[s] - V[s]))\n",
    "        V = np.copy(V_new)\n",
    "        # Stop if change is below a threshold\n",
    "        if delta < theta:\n",
    "            break\n",
    "    return np.array(V)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Custom print to show state values inside the grid\n",
    "def grid_print(V, k=None):\n",
    "    ax = sns.heatmap(V.reshape(env.shape),\n",
    "                     annot=True, square=True,\n",
    "                     cbar=False, cmap='Blues',\n",
    "                     xticklabels=False, yticklabels=False)\n",
    "\n",
    "    if k:\n",
    "        ax.set(title=\"K = {0}\".format(k))\n",
    "    plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Create a random policy\n",
    "random_policy = np.ones([env.nS, env.nA]) / env.nA\n",
    "\n",
    "# run policy iteration for random policy\n",
    "V_pi = policy_eval(random_policy, env, discount_factor=1.0, theta=0.00001)\n",
    "\n",
    "# Print policy\n",
    "grid_print(V_pi.reshape(env.shape))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Convergence\n",
    "\n",
    "Let us now study the convergence of values as we iterate. We will modify `policy_eval` to print the values of states as we iterate. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "def policy_eval_withprint(\n",
    "    policy, env,\n",
    "    discount_factor=1.0,\n",
    "    theta=0.00001,\n",
    "    print_at=[]\n",
    "):\n",
    "    \"\"\"\n",
    "    Evaluate a policy given an environment and\n",
    "    a full description of the environment's dynamics.\n",
    "\n",
    "    Args:\n",
    "        policy: [S, A]shaped matrix representing the policy. Random in our case\n",
    "        env: OpenAI env. env.P -> transition dynamics of the environment.\n",
    "            env.P[s][a] [(prob, next_state, reward, done)].\n",
    "            env.nS is number of states in the environment.\n",
    "            env.nA is number of actions in the environment.\n",
    "        theta: Stop evaluation once value function change is\n",
    "            less than theta for all states.\n",
    "        discount_factor: Gamma discount factor.\n",
    "\n",
    "    Returns:\n",
    "        Vector of length env.nS representing the value function.\n",
    "    \"\"\"\n",
    "    # Start with a (all 0) value function\n",
    "    k = 0\n",
    "    V = np.zeros(env.nS)\n",
    "    V_new = np.copy(V)\n",
    "    while True:\n",
    "        k += 1\n",
    "        delta = 0\n",
    "        # For each state, perform a \"backup\"\n",
    "        for s in range(env.nS):\n",
    "            v = 0\n",
    "            # Look at the possible next actions\n",
    "            for a, pi_a in enumerate(policy[s]):\n",
    "                # For each action, look at the possible next states...\n",
    "                for prob, next_state, reward, done in env.P[s][a]:\n",
    "                    # Calculate the expected value as per backup diagram\n",
    "                    v += pi_a * prob * \\\n",
    "                        (reward + discount_factor * V[next_state])\n",
    "            # How much our value function changed (across any states)\n",
    "            V_new[s] = v\n",
    "            delta = max(delta, np.abs(V_new[s] - V[s]))\n",
    "\n",
    "        V = np.copy(V_new)\n",
    "        # print grid for specified iteration values\n",
    "        if k in print_at:\n",
    "            grid_print(V.reshape(env.shape), k=k)\n",
    "        # Stop if change is below a threshold\n",
    "        if delta < theta:\n",
    "            break\n",
    "    grid_print(V.reshape(env.shape), k=k)\n",
    "    return np.array(V)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAGbCAYAAAAr/4yjAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAAP3klEQVR4nO3ca4hd9dXA4ZU3k4vNZSbTpE2MxRKJE5xqFMy14K0WSmvvpZQi2ugYjFhtoR9sC21NKUUKweI0qBmZMiFaKJqKqWg0fgiIpFYnl0k0GIltrdqZYB0110ly+kFZMG8aO2pmb88+z/PN/9mHs1xIfuyzcxxTq9VqAQAR8X9lDwDAR4coAJBEAYAkCgAkUQAgiQIASRQASKIAQBIFAJIoAJBEgbrzwAMPRFtbW+zYsWPY+VtvvRXf+ta34txzz43NmzcXNs+9994bN910U1xyySXR1tYWt9xyS2GfDadaU9kDwKnw9ttvxzXXXBO7d++Ozs7OuOiiiwr77K6urti/f3+ce+65MTAwUNjnwmgQBere22+/Hddee20899xz0dnZGRdffHGhn7927do4/fTTY8yYMXHBBRcU+tlwqokCdW3//v3R0dERO3fujDvuuCMuueSSwmeYPXt24Z8Jo0UUqFsHDx6M6667Lvr6+uK3v/1tXHrppSN63/Hjx+ONN94Y0bVTpkyJcePGfYgpob6IAnXrlltuif7+/rj99tvjc5/73Ijf98orr4z4+p6enli0aNEHHRHqjihQt/bt2xfjx4+PWbNmva/3zZgxI7q7u0d07bx58z7IaFC3RIG6tXLlyvj1r38dHR0dsW7dupgzZ86I3jdhwoRYunTpKE8H9UkUqFtnnXVWrFmzJq6++uq45ppr4r777hvRXcOxY8fi9ddfH9FnNDc3x/jx4z/sqFA3RIG6dt5558Xq1atj+fLlsWzZsrj33nujtbX1Pd/z6quveqYAJyEK1L0lS5bEqlWr4uabb46Ojo7o6emJyZMnn/R6zxTg5ESBSvj85z8fv/zlL+MnP/lJrFixIrq6umLChAn/9dpT/UzhiSeeiOeffz4iIoaGhmL37t2xevXqiIi47LLLhIW6IgpUxje/+c0YHByM2267LW6++ebo7OyMpqbR/09848aNsX79+vznXbt2xa5duyIiYubMmaJAXRlTq9VqZQ8BwEeD/0sqAEkUAEiiAEASBQCSKACQRAGANOK/xH3aBTeO5hz8P/9+urPsEYCKmTiCP/HdKQCQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEBqKnuA0TB+XFP8bMWX4rtXLIyWKadF3wuvxC9+tyGe2PJ82aNV2sBAf6xb2xM7tm+LXTv74sCBA9HV3RMLFi4qe7RKsu/iNcLOK3mnsGbllXHTlZfFHx5+On70m/vj2PHj8ac7VsTS8+eUPVqlvbR3b3Tfsyb6+/tj7tltZY9TefZdvEbYeeXuFC5sPzO+/YUL48er1sftazdFRMS6DVvimT/+NH71g6/Fpd9bVfKE1XVOe3tsfnJLNLe0xGOPPhLbtvaWPVKl2XfxGmHnlbtT+Prl58fRo8fingeezLPDR47G7x98KhbPnxNnfLKlvOEqbtKkydHc0lL2GA3DvovXCDuvXBTmz/tUvPD3/nhr/6Fh53/teykiIs5rO6OEqQDqQ+WiMHP61Hht4M0Tzl/b987ZrBnNRY8EUDcqF4XTJoyLw0NHTzg/dHgoXwfgv6vcg+aDh4diwrgT/7UmvhuDg+/GgQ9u6MiRGBwcHHY2rbU1xo4dW9JE1WbfxWvknVcuCq/tezNO/8SJXxHNnD41IiJeHRg84TXen61be6Nj2VXDzh7euClmz/a8ZjTYd/EaeeeVi8L23S/HxRfOjSmTJg572LzgM5/O1/lw2trmxV1d3cPOpk+fUdI01WffxWvknVcuCusf740fXn15XPuNz+bvFMaPa4qrvro4/rJ9b7z8rzfKHbACpjY3x+IlS8seo2HYd/EaeeeVi8LTfX+L+zc+Gyu//5WY0To5XvzHvrjyywvjzFkfj+tvXVf2eJV3952rIyLixT17IiJiw0MPRu+zz0RExPLrbyhtrqqy7+JVfedjarVabSQXnnbBjaM9yykzYXxT/PyGK+I7X1wQ06Z+LPpe+GfcuvrP8fhTz5U92oj9++nOskf4QOa3n/yn/9t27i5wksZg38Wr551PHMFtQCWjUAX1GgXgo2skUajc7xQA+OBEAYAkCgAkUQAgiQIASRQASKIAQBIFAJIoAJBEAYAkCgAkUQAgiQIASRQASKIAQBIFAJIoAJBEAYAkCgAkUQAgiQIASRQASKIAQBIFAJIoAJBEAYAkCgAkUQAgiQIASRQASKIAQBIFAJIoAJBEAYAkCgAkUQAgiQIASRQASKIAQBpTq9VqI7nw0NHRHgWA0TSx6X9f404BgCQKACRRACCJAgBJFABIogBAEgUAkigAkEQBgCQKACRRACCJAgBJFABIogBAEgUAkigAkEQBgCQKACRRACCJAgBJFABIogBAEgUAkigAkEQBgCQKACRRACCJAgBJFABIogBAEgUAkigAkEQBgCQKACRRACCJAgBJFABIogBAaip7gNE0MNAf69b2xI7t22LXzr44cOBAdHX3xIKFi8oerZLsu1j2XbxG2Hml7xRe2rs3uu9ZE/39/TH37Layx6k8+y6WfRevEXZe6TuFc9rbY/OTW6K5pSUee/SR2La1t+yRKs2+i2XfxWuEnVc6CpMmTS57hIZi38Wy7+I1ws4r/fURAO+PKACQRAGAVIlnCkNHjsTg4OCws2mtrTF27NiSJqo2+y6WfRevkXdeiShs3dobHcuuGnb28MZNMXv2GSVNVG32XSz7Ll4j77wSUWhrmxd3dXUPO5s+fUZJ01SffRfLvovXyDuvRBSmNjfH4iVLyx6jYdh3sey7eI2880pE4b3cfefqiIh4cc+eiIjY8NCD0fvsMxERsfz6G0qbq6rsu1j2Xbyq73xMrVarjeTCQ0dHe5TRMb/95D9F37Zzd4GTNAb7LpZ9F6+edz5xBLcBlY8CAO8YSRT8TgGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEBqKnuA0TQw0B/r1vbEju3bYtfOvjhw4EB0dffEgoWLyh6tkuy7WPZdvEbYeaXvFF7auze671kT/f39MffstrLHqTz7LpZ9F68Rdl7pO4Vz2ttj85NbormlJR579JHYtrW37JEqzb6LZd/Fa4SdVzoKkyZNLnuEhmLfxbLv4jXCziv99REA748oAJBEAYBUiWcKQ0eOxODg4LCzaa2tMXbs2JImqjb7LpZ9F6+Rd16JKGzd2hsdy64advbwxk0xe/YZJU1UbfZdLPsuXiPvvBJRaGubF3d1dQ87mz59RknTVJ99F8u+i9fIO69EFKY2N8fiJUvLHqNh2Hex7Lt4jbzzSkThvdx95+qIiHhxz56IiNjw0IPR++wzERGx/PobSpurquy7WPZdvKrvfEytVquN5MJDR0d7lNExv/3kP0XftnN3gZM0Bvsuln0Xr553PnEEtwGVjwIA7xhJFPxOAYAkCgAkUQAgiQIASRQASKIAQBIFAJIoAJBEAYAkCgAkUQAgiQIASRQASKIAQBIFAJIoAJBEAYAkCgAkUQAgiQIASRQASKIAQBIFAJIoAJBEAYAkCgAkUQAgiQIASRQASKIAQBIFAJIoAJBEAYAkCgAkUQAgiQIASRQASKIAQBIFAJIoAJCayh4AaEzTFtxY9ggN52Bv5/+8xp0CAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGA1FT2AKNpYKA/1q3tiR3bt8WunX1x4MCB6OruiQULF5U9WiXZd7HsuzjjxzXFz1Z8Kb57xcJomXJa9L3wSvzidxviiS3Plz3aKVfpO4WX9u6N7nvWRH9/f8w9u63scSrPvotl38VZs/LKuOnKy+IPDz8dP/rN/XHs+PH40x0rYun5c8oe7ZSr9J3COe3tsfnJLdHc0hKPPfpIbNvaW/ZIlWbfxbLvYlzYfmZ8+wsXxo9XrY/b126KiIh1G7bEM3/8afzqB1+LS7+3quQJT61K3ylMmjQ5mltayh6jYdh3sey7GF+//Pw4evRY3PPAk3l2+MjR+P2DT8Xi+XPijE+2lDfcKKh0FAA+rPnzPhUv/L0/3tp/aNj5X/teioiI89rOKGGq0SMKAO9h5vSp8drAmyecv7bvnbNZM5qLHmlUiQLAezhtwrg4PHT0hPNDh4fy9SqpxIPmoSNHYnBwcNjZtNbWGDt2bEkTVZt9F8u+y3Xw8FBMGHfiH5UT343BwXfjUBWViMLWrb3RseyqYWcPb9wUs2dX67u+jwr7LpZ9l+u1fW/G6Z848SuimdOnRkTEqwODJ7xWzyoRhba2eXFXV/ews+nTZ5Q0TfXZd7Hsu1zbd78cF184N6ZMmjjsYfOCz3w6X6+SSkRhanNzLF6ytOwxGoZ9F8u+y7X+8d744dWXx7Xf+Gz+TmH8uKa46quL4y/b98bL/3qj3AFPsUpE4b3cfefqiIh4cc+eiIjY8NCD0fvsMxERsfz6G0qbq6rsu1j2Pfqe7vtb3L/x2Vj5/a/EjNbJ8eI/9sWVX14YZ876eFx/67qyxzvlxtRqtdpILjx04sP3ujC//eQ//9+2c3eBkzQG+y5WPe972oIbyx5hxCaMb4qf33BFfOeLC2La1I9F3wv/jFtX/zkef+q5skd7Xw72dv7PayofBeCjqZ6iUBUjiYLfKQCQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEASBQCSKACQRAGAJAoAJFEAIIkCAEkUAEiiAEAaU6vVamUPAcBHgzsFAJIoAJBEAYAkCgAkUQAgiQIASRQASKIAQBIFANJ/AJ0pJYtfqbfWAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAGbCAYAAAAr/4yjAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAAd5ElEQVR4nO3ce3RVhZn38R/kTu4xsWKM4SILnbEwIkgQKuXaMKPWAp0lCIIQYixQYBV1ZKijVHFRLQtqqEIyhiAgS4pFi1igXCyLgsNVAojVBJCQhEtrgiYBTk7y/oE86z2Nl4QkZ3N2vp//3PucnSdPlK8n52za1NXV1QkAAEltnR4AAHDtIAoAAEMUAACGKAAADFEAABiiAAAwRAEAYIgCAMAQBQCAIQoAAEMUEHDeeustde3aVQUFBT7Hv/jiC40cOVLf//739Ze//MUvs5SWlio7O1sjR45Ur1691Lt3b40dO1Z//etf/fL1geZGFOAKX375pSZMmKCPP/5Y2dnZuueee/zydTdv3qycnBylpqZq+vTp+tnPfqbKyko98sgjWrNmjV9mAJpTsNMDAE315ZdfauLEifroo4+UnZ2t/v37++1r9+7dW1u3blVCQoIdGzVqlH784x/rt7/9rUaMGOG3WYDmwCsFBLTKykplZGTo8OHDevnll/XDH/7Qr1+/S5cuPkGQpNDQUPXv319lZWX68ssv/ToP0FS8UkDAqq6u1qRJk3To0CEtXLhQAwYMaNDzamtrVV5e3qDHRkdHKyQkpNGznT17VhEREYqIiGj0cwEnEQUErP/6r//SmTNntGDBAg0aNKjBzyspKWnw45ctW6bevXs3aq4TJ05o06ZNSk9PV1BQUKOeCziNKCBgnTt3TqGhoWrfvn2jnpeUlKS8vLwGPfbWW29t1LWrq6s1bdo0hYeH6xe/+EWjngtcC4gCAtacOXP0wgsvKCMjQytWrFCnTp0a9LywsDDdfffdzT6P1+vVjBkz9OmnnyonJ0ff+973mv1rAC2NKCBgde7cWTk5ORo3bpwmTJigN954o0GvGrxer/7xj3806GvExsYqNDS0QY+dPXu2tm3bppdeekl9+vRp0HOAaw1RQEDr1q2bfve73ykzM1OPPPKIVq5cWe/TQP+stLS02d9TmDdvnt566y3NmjVL9957b4OuDVyLiAICXp8+fTR//nxNmzZNGRkZWrZsmaKior7x8c39nkJubq5ee+01ZWVlady4cQ2eG7gWEQW4wpAhQ/SrX/1Ks2bN0mOPPabc3FyFhYV97WOb8z2FTZs26cUXX1SHDh3UqVMnvf322z7n+/btq8TExGb5WoA/EAW4xogRI1RRUaF58+Zp2rRpys7OVnBwy/4rfvToUUnS8ePH9cQTT9Q7v2zZMqKAgNKmrq6uzukhAADXBv6aCwCAIQoAAEMUAACGKAAADFEAABiiAAAwDf4Qd8QdU1pyDvyTI5tecnqEVqd9XLjTIwAtKrwBf+LzSgEAYIgCAMAQBQCAIQoAAEMUAACGKAAADFEAABiiAAAwRAEAYIgCAMAQBQCAIQoAAEMUAACGKAAADFEAABiiAAAwRAEAYIgCAMAQBQCAIQoAAEMUAACGKAAADFEAABiiAAAwRAEAYIgCAMAQBQCAIQoAAEMUAACGKAAADFEAABiiAAAwRAEAYIgCAMAQBQCAIQoAAEMUAACGKAAADFEAAJhgpwdoCaEhwXr6sf/Q6HvvUlx0hA59UqJnFq3Tlg+OOj1aQPv7ubN6e/UKHT1coE+OHlF1dZXmvZyr7j16Nfga+3bv0qr8HB0v+lRer1fJKTfr/pGjNDj9vhac3J0+2LVT7657R/v37dOZ02W6LjFRd/VO0+Sp05SUdL3T47lSa9i5K6OQM2eMfjLoDmWv3KpPPzursff31tqXH1N65kL99UCR0+MFrOLPjuvN5XlKTrlZHTp30UeHPmzU83du36Y5T03Xbbd315gJWVKbNtq+ZaNe+tVsnS8v1/AHx7bM4C61YP6Lqqio0JCh6UpN7aDi4pNatXK5/rJtm95cs1aJSUlOj+g6rWHnberq6uoa8sCIO6a09CzNoue/pmr78sf11Pw/aMHrmyVJYaHB2rv6v3X28y80YPx8hydsmCObXnJ6hHqqKivl9dYoOiZW27du0vOzZzbqlcKs6Y/qxLFC5a1er9DQUEmSt6ZGGaMfUHhEhF7JX92S43+n9nHhjn79xtq7Z7fu6HGn2rZt63NswrgxmpSZpSnTZjg4nTsF+s7DG/AywHXvKfxk8L+ppsar/31rhx27eKlGS9/eqbTunXTT9+KcGy7AtYuMVHRM7FU/v6qyUlHRMRYESQoKDlZsbJzCQsOaY8RW5c6evXz+cLpyLDY2TkVFvCJuCa1h566LQvdbU/TJZ2f0ReUFn+N7Dh2XJHXrepMDU0GSuvXoqRPHCpW/JFslxZ+ppPikVuQt1t8+PqKRD413ejxXqKqsVFVVpeLi450epdVw285d957CDYkxKjt7vt7xsnOXj7VPuvr/00XTjB6fqbKSU1q1LFdv5OdIksLCw/XL53+jPj8Y4PB07rD89Xx5PB79KH2Y06O0Gm7bueuiEBEWoouemnrHL1z02Hk4IyQkVMkpqeo3YIj69h+oWm+t3ntnjX797CzNXbBYt93ezekRA9rePbu1+JVFGpo+TL3T+jg9Tqvgxp27LgrVFz0KC6n/bYV/FYPqr+KAb+bxePTF+QqfY7Fx8QoKCmrSdRfNf0FHDxcoO2+V/V72nkFD9eiY4Xp14TwtzFnRpOu7lefSJVVU+P484hMSfH4ex4oKNePnU9T5li56Zs5z/h7RdVrzzl0XhbJz53Xj9fV/RXRDYowkqfRsRb1z8HWk4ICenJrhc2zp79frhvbJV31Nj8ejDevW6qcPjfd5oy44OEQ90/rpj2tWyePxKCSEV3L/7MCB/cp45GGfY+s3blZy8uX3x8pKS5U1aaKioqO06NUlioyMcmJMV2nNO3ddFA5+XKz+PbsoOjLc583mXrd3sPP4dp1u6aq5Cxb7HEtISGzSNc9XlMvrrVFtrbfeOW9NjWpra786RxT+Wdeut2pxbp7PscTEy5+HLy//XFmZE3TJc0lLX1vpmhuonNaad+66KPzhz/s1Y9xgTRze1+5TCA0J1sM/TtP/HTym4tPlzg4YAKJjYtSjV1qTrnGmrFQXL15QSmpHSVJcfIKioqO14/0tGpsx2V4RVFdVadeO95WS2lFhYYF1n4C/xMTGKq3P3fWOV1VVaXJWps6cPq3cvGVKTe3g/+FcqjXv3HVR2H3ohNZs3Kc5U+9XUkKUCk+e05j77lJq++uU9Sy/s26qlUuXSJJOHCuUJG3esE6HD+6XdPnTRVe8+NxsFezfoz/tuHzXc1BQkEaMGqf8JdmanjlGg9PvU22tVxvWrdW5M6f1xNNz/fydBL5ZT87UoYKDemD4CBUVFaqoqNDOtWsXqYGDBjs4nTu1hp277o5m6fIdzP/zs3v14L/3UnxMOx365JSe/d27+vPOj5wercGuxTuaJSm9b/dvPHclAJL0+JSJPlG4YuvG9Vq7eoVOnTwhzyWPOnbuopGjx6vfAOf/Ywq0O5qHDRmokpJTX3vuxhuT9d6mLX6eyP0CfecNuaPZlVFwg2s1Cm4WaFEAGqtV/jUXAICrRxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAQxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAQxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAQxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAQxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwLSpq6ura8gDj5270NKz4P/TPi7c6REAuEx48Hc/hlcKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCCnR6gKf5+7qzeXr1CRw8X6JOjR1RdXaV5L+eqe49eDb7Gvt27tCo/R8eLPpXX61Vyys26f+QoDU6/rwUnd6cPdu3Uu+ve0f59+3TmdJmuS0zUXb3TNHnqNCUlXe/0eK7Dvv2vNey8TV1dXV1DHnjs3IWWnqXRPty3W09OzVByys2KiY3XR4c+bFQUdm7fpjlPTddtt3fXDwenS23aaPuWjSo4sFeZU2dq+INjW/Yb+Bbt48Id+9pXa9R/DldFRYWGDE1XamoHFRef1KqVyxUeHqE316xVYlKS0yO6Cvv2v0DfeXgDXgYEdBSqKivl9dYoOiZW27du0vOzZzYqCrOmP6oTxwqVt3q9QkNDJUnemhpljH5A4REReiV/dUuO/60CMQp79+zWHT3uVNu2bX2OTRg3RpMyszRl2gwHp3Mf9u1/gb7zhkQhoH991C4ysknPr6qsVFR0jAVBkoKCgxUbG9fEyVqnO3vWj/GdPXspNjZORUVFDkzkbuzb/1rDzlv1G83devTUiWOFyl+SrZLiz1RSfFIr8hbrbx8f0ciHxjs9nitUVVaqqqpScfHxTo/SKrBv/3PbzgP6lUJTjR6fqbKSU1q1LFdv5OdIksLCw/XL53+jPj8Y4PB07rD89Xx5PB79KH2Y06O0Cuzb/9y281YdhZCQUCWnpKrfgCHq23+gar21eu+dNfr1s7M0d8Fi3XZ7N6dHDGh79+zW4lcWaWj6MPVO6+P0OK7Hvv3PjTsPiCh4PB59cb7C51hsXLyCgoKadN1F81/Q0cMFys5bZW8c3TNoqB4dM1yvLpynhTkrmnR9t/JcuqSKCt+fR3xCgs/P41hRoWb8fIo639JFz8x5zt8jugr79r/WvPOAiMKRggN6cmqGz7Glv1+vG9onX/U1PR6PNqxbq58+NN7nkwTBwSHqmdZPf1yzSh6PRyEhIVf9NdzqwIH9ynjkYZ9j6zduVnLyTZKkstJSZU2aqKjoKC16dYkiI6OcGNM12Lf/teadB0QUOt3SVXMXLPY5lpCQ2KRrnq8ol9dbo9pab71z3poa1dbWfnWOKPyzrl1v1eLcPJ9jiYmXP59dXv65sjIn6JLnkpa+ttI1N/Q4iX37X2veeUBEITomRj16pTXpGmfKSnXx4gWlpHaUJMXFJygqOlo73t+isRmT7RVBdVWVdu14XympHRUWFnj3CvhDTGys0vrcXe94VVWVJmdl6szp08rNW6bU1A7+H86F2Lf/teadB0QUvs3KpUskSSeOFUqSNm9Yp8MH90u6/OmiK158brYK9u/Rn3Z8KEkKCgrSiFHjlL8kW9Mzx2hw+n2qrfVqw7q1OnfmtJ54eq6fv5PAN+vJmTpUcFAPDB+hoqJCFRUV2rl27SI1cNBgB6dzH/btf61h5wF9R7Mkpfft/o3nrgRAkh6fMtEnClds3bhea1ev0KmTJ+S55FHHzl00cvR49Rvg7A83EO9oHjZkoEpKTn3tuRtvTNZ7m7b4eSJ3Y9/+F+g7d/1fc+FmgRgFANe2hkShVd/RDADwRRQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAQxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAQxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAQxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAQxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwLSpq6ura8gDL9S09CgAWpPS8gtOj9DqdEwM/87H8EoBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAEyw0wO0pA927dS7697R/n37dOZ0ma5LTNRdvdM0eeo0JSVd7/R4rsO+/Yt9N7+/nzurt1ev0NHDBfrk6BFVV1dp3su56t6jV4OvsW/3Lq3Kz9Hxok/l9XqVnHKz7h85SoPT72vByZtPm7q6urqGPPBCTUuP0vxG/edwVVRUaMjQdKWmdlBx8UmtWrlc4eERenPNWiUmJTk9oquwb/8K9H2Xll9weoR6Pty3W09OzVByys2KiY3XR4c+bFQUdm7fpjlPTddtt3fXDwenS23aaPuWjSo4sFeZU2dq+INjW/Yb+A4dE8O/8zGujsLePbt1R4871bZtW59jE8aN0aTMLE2ZNsPB6dyHfftXoO/7WoxCVWWlvN4aRcfEavvWTXp+9sxGRWHW9Ed14lih8lavV2hoqCTJW1OjjNEPKDwiQq/kr27J8b9TQ6Lg6l8f3dmz/g/yzp69FBsbp6KiIgcmcjf27V/su/m1i4xs0vOrKisVFR1jQZCkoOBgxcbGNXEy/2l1bzRXVVaqqqpScfHxTo/SKrBv/2LfzurWo6dOHCtU/pJslRR/ppLik1qRt1h/+/iIRj403unxGsTVrxS+zvLX8+XxePSj9GFOj9IqsG//Yt/OGj0+U2Ulp7RqWa7eyM+RJIWFh+uXz/9GfX4wwOHpGqZVRWHvnt1a/MoiDU0fpt5pfZwex/XYt3+xb+eFhIQqOSVV/QYMUd/+A1XrrdV776zRr5+dpbkLFuu227s5PeJ3ckUUPJcuqaKiwudYfEKCgoKC7J+PFRVqxs+nqPMtXfTMnOf8PaKrsG//Yt/Nz+Px6IvzvjuNjYv32enVWDT/BR09XKDsvFX2AYB7Bg3Vo2OG69WF87QwZ0WTru8ProjCgQP7lfHIwz7H1m/crOTkmyRJZaWlypo0UVHRUVr06hJFRkY5MaZrsG//Yt/N70jBAT05NcPn2NLfr9cN7ZOv+poej0cb1q3VTx8a7/OJsODgEPVM66c/rlklj8ejkJCQq/4a/uCKKHTteqsW5+b5HEtMvPwZ7fLyz5WVOUGXPJe09LWV3NTTDNi3f7Hv5tfplq6au2Cxz7GEhMQmXfN8Rbm83hrV1nrrnfPW1Ki2tvarc0ShxcXExiqtz931jldVVWlyVqbOnD6t3LxlSk3t4P/hXIh9+xf7bn7RMTHq0SutSdc4U1aqixcvKCW1oyQpLj5BUdHR2vH+Fo3NmGyvCKqrqrRrx/tKSe2osLDvvk/Aaa6IwjeZ9eRMHSo4qAeGj1BRUaGKigrtXLt2kRo4aLCD07kP+/Yv9t0yVi5dIkk6cezyPjdvWKfDB/dLuvzpoitefG62Cvbv0Z92fChJCgoK0ohR45S/JFvTM8docPp9qq31asO6tTp35rSeeHqun7+Tq+PqO5qHDRmokpJTX3vuxhuT9d6mLX6eyN3Yt38F+r6vxTuaJSm9b/dvPHclAJL0+JSJPlG4YuvG9Vq7eoVOnTwhzyWPOnbuopGjx6vfAOcj3er/mgsA165rNQpu1pAotLo7mgEA34woAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAQxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAQxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAQxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAQxQAAIYoAAAMUQAAGKIAADBEAQBgiAIAwBAFAIAhCgAAE+z0AMC1orT8gtMjtCr/MmSm0yO0OtX7s7/zMbxSAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAAAT7PQALemDXTv17rp3tH/fPp05XabrEhN1V+80TZ46TUlJ1zs9nuuw7+b393Nn9fbqFTp6uECfHD2i6uoqzXs5V9179GrwNfbt3qVV+Tk6XvSpvF6vklNu1v0jR2lw+n0tOLm7hIYE6+nH/kOj771LcdEROvRJiZ5ZtE5bPjjq9GjNztVRWDD/RVVUVGjI0HSlpnZQcfFJrVq5XH/Ztk1vrlmrxKQkp0d0Ffbd/Io/O643l+cpOeVmdejcRR8d+rBRz9+5fZvmPDVdt93eXWMmZElt2mj7lo166Vezdb68XMMfHNsyg7tMzpwx+smgO5S9cqs+/eysxt7fW2tffkzpmQv11wNFTo/XrNrU1dXVNeSBF2paepTmt3fPbt3R4061bdvW59iEcWM0KTNLU6bNcHA69wn0fZeWX3B6hHqqKivl9dYoOiZW27du0vOzZzbqlcKs6Y/qxLFC5a1er9DQUEmSt6ZGGaMfUHhEhF7JX92S43+rfxky07Gv3Rg9/zVV25c/rqfm/0ELXt8sSQoLDdbe1f+ts59/oQHj5zs8YcNV78/+zse4+j2FO3v28vkD6sqx2Ng4FRW5q+7XAvbd/NpFRio6Jvaqn19VWamo6BgLgiQFBQcrNjZOYaFhzTGi6/1k8L+ppsar/31rhx27eKlGS9/eqbTunXTT9+KcG64FuDoKX6eqslJVVZWKi493epRWgX07q1uPnjpxrFD5S7JVUvyZSopPakXeYv3t4yMa+dB4p8cLCN1vTdEnn53RF5W+ryT3HDouSerW9SYHpmo5rn5P4essfz1fHo9HP0of5vQorQL7dtbo8ZkqKzmlVcty9UZ+jiQpLDxcv3z+N+rzgwEOTxcYbkiMUdnZ8/WOl527fKx90tW/krsWtaoo7N2zW4tfWaSh6cPUO62P0+O4Hvt2XkhIqJJTUtVvwBD17T9Qtd5avffOGv362Vmau2Cxbru9m9MjXvMiwkJ00VP/TdULFz123k1cEQXPpUuqqKjwORafkKCgoCD752NFhZrx8ynqfEsXPTPnOX+P6Crsu/l5PB59cd53p7Fx8T47vRqL5r+go4cLlJ23yt7vuWfQUD06ZrheXThPC3NWNOn6rUH1RY/CQur/URn+VQyqv4qDW7giCgcO7FfGIw/7HFu/cbOSky//rq+stFRZkyYqKjpKi15dosjIKCfGdA323fyOFBzQk1MzfI4t/f163dA++aqv6fF4tGHdWv30ofE+HwAIDg5Rz7R++uOaVfJ4PAoJcdf/6Ta3snPndeP19X9FdENijCSp9GxFvXOBzBVR6Nr1Vi3OzfM5lph4+TPx5eWfKytzgi55Lmnpayu5iaoZsO/m1+mWrpq7YLHPsYSExCZd83xFubzeGtXWeuud89bUqLa29qtzROHbHPy4WP17dlF0ZLjPm829bu9g593EFVGIiY1VWp+76x2vqqrS5KxMnTl9Wrl5y5Sa2sH/w7kQ+25+0TEx6tErrUnXOFNWqosXLygltaMkKS4+QVHR0drx/haNzZhsrwiqq6q0a8f7SkntqLCw8CbP7nZ/+PN+zRg3WBOH97X7FEJDgvXwj9P0fwePqfh0ubMDNjNXROGbzHpypg4VHNQDw0eoqKhQRUWFdq5du0gNHDTYwench323jJVLl0iSThy7vM/NG9bp8MH9ki5/uuiKF5+brYL9e/SnHZfveg4KCtKIUeOUvyRb0zPHaHD6faqt9WrDurU6d+a0nnh6rp+/k8C0+9AJrdm4T3Om3q+khCgVnjynMffdpdT21ynrWfe9J+PqO5qHDRmokpJTX3vuxhuT9d6mLX6eyN0Cfd/X4h3NkpTet/s3nrsSAEl6fMpEnyhcsXXjeq1dvUKnTp6Q55JHHTt30cjR49VvgLORDpQ7mqXLdzD/z8/u1YP/3kvxMe106JNTevZ37+rPOz9yerRGacgdza6OAtAY12oU3CqQouAWrf6vuQAANA5RAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAABDFAAAhigAAAxRAAAYogAAMEQBAGCIAgDAEAUAgCEKAADTpq6urs7pIQAA1wZeKQAADFEAABiiAAAwRAEAYIgCAMAQBQCAIQoAAEMUAACGKAAAzP8DHbq7wWm2FZwAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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csVAkKQt61br5PfH9cyIscrOPGm3rSD/grIzTyowKFhe3tfep4AqW+qePRoy4Gm72vLV6xURGSlJysrMUOLg/vLz89e702Y6FAiS5OfvrwmT31dmxkllnDypOuHhCo+IVP/eTyg4OMSp/1iuZXv2pKh/n952tU/XbVRk5E1lxta44QZ1iOuoOR/OktVqlbc362SX8vWeFA3s95RdbdWaDYr46ZxmZmZo6MB+8vPz15T3ZzoUCJLk7++vSVOnKyPjpDJOnFB4RITCIyLVp9djLjPHXSIU6t8SrZfHT7erBYWESpIsuef0xuihshXZ9LcpMxy+ae1UdqaKi4v118S+ZbZtXb9aW9ev1l9em6DW7eKu/gBcTKPGjfXejA/taqFhP97zkXvunBIHD1BRkU2z5s5x+Ka1X6oTHqE64T8GuiUvTwcP7FNcp85X37ibatw4RjM/nGtXK+/z8oVWq0pLS3XhwgVC4TKiG8do+qw5drX/3mdz7txZDR3YT7aiIs1IWuTwTWu/FB4eofBfzPED+/epY7xrzHGXCAU//wA1axlbpm4tKNCbLybqzKkcvTpxpsJvqnfZfeRkZaio0KrIelGSpHZxnRV1S3SZceNfGakWsXcpvttDavS7JhV3EC4kICBQrdvcWaZeUJCvEcMGKjs7S9M/mKd6N9e/7D4yM07KarWqflSDcp9r+nvvqqSkRI/37F3uuOtZQGCg2rQt+3qcPn1aoaGhdrW8vDxtWL9OdeqEl9mGnwUEBCr2UnM8P1+JQwYqJztLM2cnlTvHM36a41FXmOPvTZmkkpISPdnr6avsumq4RChczpS3xurIwX3q2PUBnTierhPHf743wdvHx+63/PfeeUX7v07W/21MliRF1osyAfFrN9aJvC6vEK7k5Rf+on17v9H9Dz6sY+lHdSz9589t+/r46u6O8ebn1/76gnYn79SXe/abWtKcD5R25LBubdpM1at7auvmjfryi881aGiift+kaZUeizsYOmiAateurabNblNISKgyMk5q5YplysnO1vgJ7zq7PZc09oVR2rc3VQ889IjS09KUnvbz/Tc+vr6K+8Ucf2XsaCXv2qnk1IOmNnf2LB09clhNfprjWzZv0I7/fK4hw57TrS4yx106FI4d/VaStGntSm1au9JuW63a4byxV7DDh36c/KtWLNOqFcvstoWHR9iFwqXc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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# run policy iteration for random policy and print interim state values\n",
    "V_pi = policy_eval_withprint(\n",
    "        random_policy,\n",
    "        env,\n",
    "        discount_factor=1.0,\n",
    "        theta=0.00001,\n",
    "        print_at=[1, 2, 3, 10, 50, 100])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Conclusion\n",
    "\n",
    "We see that state values start with -1 after first iteration. And then they slowly start to converge to the value $ V_{\\pi}(S) $. By 50 iteration, they are fairly close. By 100th iteration, the values differ only in decimal values. Finally it takes about 200 iterations for the values to converge wherein the change in values during an iteration falls below the specified threshold 0.00001."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.18"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
